//package com.learning.netease.design.pattern.template;
//
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.amqp.rabbit.core.RabbitTemplate;
//import org.springframework.dao.DataAccessException;
//import org.springframework.data.redis.connection.RedisConnection;
//import org.springframework.data.redis.core.RedisCallback;
//import org.springframework.data.redis.core.RedisTemplate;
//import org.springframework.jdbc.core.JdbcTemplate;
//import org.springframework.jdbc.core.StatementCallback;
//import org.springframework.web.client.RestTemplate;
//
//import java.sql.SQLException;
//import java.sql.Statement;
//
///**
// * ClassName: TemplateDemo
// * Description: Template 模板案例
// * Date: 2020/3/22 16:33 【需求编号】
// *
// * @author Sam Sho
// * @version V1.0.0
// */
//@Slf4j
//public class TemplateDemo {
//
//    /**
//     * 简单案例方法
//     */
//    public void test() {
//        RestTemplate restTemplate = new RestTemplate();
//
//        RabbitTemplate rabbitTemplate = new RabbitTemplate();
//
//        JdbcTemplate jdbcTemplate = new JdbcTemplate();
//
//        RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
//    }
//
//
//    /**
//     * JdbcTemplate 回调
//     */
//    public void test2() {
//
//        // 回调方法使用
//        JdbcTemplate jdbcTemplate = new JdbcTemplate();
//        jdbcTemplate.execute(new StatementCallback<Object>() {
//            @Override
//            public Object doInStatement(Statement statement) throws SQLException, DataAccessException {
//                log.info("特定执行步骤处理");
//                return null;
//            }
//        });
//    }
//
//
//    /**
//     * 回调
//     */
//    public void test3() {
//        // 回调方法使用
//        RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
//        redisTemplate.execute(new RedisCallback<Object>() {
//            @Override
//            public Object doInRedis(RedisConnection redisConnection) throws DataAccessException {
//
//                return null;
//            }
//        });
//    }
//
//}
